This invention relates to the use of a computer for controlling the operation of a telephony system, such use is known in the art as computer telephony integration (CTI), and the systems employing such control are known as CTI systems.
As a general background, the reader will find examples of such CTI systems disclosed in the articles xe2x80x9cIntroduction to Computer Telephony Integrationxe2x80x9d, by A. Catchpole, G. Crook, and D. Chesterman, British Telecommunications Engineering, Vol. 14, July 1995; xe2x80x9cComputer Telephony Integrationxe2x80x94The Meridian Norstarxe2x80x9d, by A. Catchpole, British Telecommunications Engineering, Vol. 14, October 1995; xe2x80x9cComputer Telephony Integrationxe2x80x94The Meridian 1 PBXxe2x80x9d, by P. Johnson, A. Catchpole, and L. Booton, British Telecommunications Engineering, Vol. 15, July 1998; xe2x80x9cCallscapexe2x80x94Computer Telephony Integration for the Small Businessxe2x80x9d, by G. Hillson, G. Hardcastle, and M. Allington, British Telecommunications Engineering, Vol. 15, January 1997, and xe2x80x9cCall Centres Doing Business by Telephonexe2x80x9d by M. Bonner, British Telecommunications Engineering, Vol. 13, July 1994.
Furthermore, a method is known of operating a CTI system comprising a CTI-enabled PBX, an associated CTI controller, and a plurality of user workstations, each workstation comprising a computer connected to the CTI controller and a telephone connected to the PBX In this method, the CTI controller stores respective user-associated profiles, each including a user associated workgroup containing names of users of the system, in whose telephony status the user associated with that workgroup is interested, and the PBX on receipt of an incoming call retrieves from the signalling data a dialled number (known as the Dialled Number Identification Service number (DNIS)) and the calling line identity or identification (CLI), and passes these to the CTI controller. The CTI controller translates the DNIS to a username for the called user and accesses the workgroups to find out which contain that username. The CTI controller then sends a message containing that username to each computer at which a user, whose workgroup contains that username, is currently logged on to the CTI controller. It will be appreciated that in the art, the terms log on, logon, log in and login are synonymous and interchangeable, as are the terms log off, logoff, log out and logout.
While a user is currently logged on to the CTI controller, his computer displays a respective set of icons representing the members of that user""s workgroup, the icons being in the form of respective facial images, each icon) including a text display, e.g. xe2x80x9cFreexe2x80x9d, to indicate the current telephony status of the corresponding user, and upon receipt of this message, the computers change the text display of the icon corresponding to the received user name to xe2x80x9cRingingxe2x80x9d. A user can answer an incoming call for a member of his workgroup by sending an answer message from his computer to the CTI controller, and the CTI controller responds by commanding the PBX to connect the incoming call to that user""s telephone. This method is referred to as Distributed Office Telephony (DOT).
According to a first aspect of the present invention there is provided a method of operating a computer telephony integration (CTI) system comprising a switch and a CTI controller therefor, and a plurality of user workstations, each workstation comprising a computer connected to the CTI controller and a telephone connected to the switch, the system storing, for each user of the system, a respective user-associated profile containing at least the identity of the computer at which the associated user is currently logged on to the CTI controller, the method comprising the steps of:
responding to receipt of an incoming call at the switch by retrieve from signalling data of that incoming call a called user identity:
accessing the profile associated with the called user to retrieve the identity of the computer at which the called user is currently logged on to the CTI controller;
sending an incoming call message in respect of the called user from the CTI controller to that computer; and
responding to receipt of said incoming call message at that computer by displaying an indication that an incoming call has been received for the called user; and the method being characterised by the stops of:
storing in each user-associated profile, a respective value for the length of time that an incoming call for the associated user is to be allowed to remain unanswered before routing the (call to an answering facility, said value being referred to hereafter as a countdown value;
further responding to receipt of the incoming call by retrieving said countdown value from the profile associated with that called user;
starting a call-associated countdown from the retrieved countdown value; and
further responding to receipt of said incoming call message at that computer by additionally displaying the current value of said call-associated countdown.
An advantage of the present invention is that the called user can on returning to his workstation and finding that there is an incoming call for him, make a more informed decision as to whether to attempt to answer that incoming call. For example, if the user is still some distance away from his client or the telephone and sees the countdown value is, say, two or three seconds, he knows that it is unlikely that he will be able to answer the call before the countdown reaches zero, and can decide not to make a hurried attempt to answer the call, or if he does decide to try to answer that call he knows that he will have to make a hurried attempt. On the other hand, if he sees that the countdown value is, say, five seconds, then he will know that he can comfortably get to the workstation to answer the call before the countdown reaches zero.
Preferably, said call-associated countdown is performed by the CTI controller, and the CTI controller periodically sends the current value of said call-associated countdown to that computer.
Alternatively, said incoming call message includes said retrieved countdown value, and said call-associated countdown is performed by that computer.
Preferably, the profile comprises a plurality of such countdown values each having a respective priority ranking, one of said plurality being a default countdown value and having lowest priority ranking, and the or each of the remainder of said plurality being associated with a predetermined value of a respective call-related feature, and the step of retrieving said countdown value comprises the substeps of comparing information retrieved from the signalling data of that incoming call directly, or indirectly, with said predetermined value or values, and in the event of no successful comparison outcome selecting for retrieval the default countdown value, and in the event of a successful comparison outcome in respect of one or more call-related features selecting for retrieval the or a said countdown value taking into account, if necessary, priority ranking.
More preferably, a said call-related feature is calling user identity, and the CTI controller retrieves from signalling data of that incoming call a calling user identity.
Yet more preferably, the said call-related feature is a personal name, and the CTI controller retrieves a calling user identity from signalling data of that incoming call and uses a calling user identity-to-personal name translation table to obtain a corresponding personal name.
Yet more preferably, the retrieved calling user identity is a calling line identity.
The call-related feature may be geographical origin, and the CTI controller may retrieve from signalling data of that incoming call a geographical origin.
Preferably, the geographical origin feature is an area name, and the CTI controller retrieves a calling line identity from signalling data of that incoming call, extracts an area code from the calling line identity, and uses an area code-to-area name translation table to obtain a corresponding area name.
The call-related feature may be a range of times, and the CTI controller compares the time of receipt of that incoming call with said range of times.
According to a second aspect of the present invention there is provided a computer telephony integration (CTI) system comprising a switch and a CTI controller therefor, and a plurality of user workstations, each workstation comprising a computer connected to the CTI controller and a telephone connected to the switch, wherein the CTI controller comprises:
means for storing, for users of the system, respective user-associated profiles, each profile being arranged to store the identity of the computer at which the associated user is currently logged on to the CTI controller,
means for retrieving from signalling data of an incoming call received at the switch a called user identity and for retrieving from the profile associated with the called user the identity of the computer at which the called user is currently logged on to the CTI controller, and
means for sending an incoming call message in respect of the called user from the CTI controller to that computer; and each said computer comprises means for responding to receipt of a said incoming call message by displaying an indication that an incoming call has been received for the called user:
the system being characterised by countdown means for counting down from a received value, and being characterised in that:
the storing means is arranged to store in each profile a respective value for the length of time that an incoming call for tho associated user is to be allowed to remain unanswered before routing the call to answer facility, said value being referred to hereafter as a countdown value;
the retrieving means is also arranged to retrieve said countdown value from the profile associated with that called user;
the sending means is arranged to send the retrieved countdown value to countdown means to start a call-associated countdown; and
the display means is arranged to receive from the countdown means the current value of said call-associated countdown and to display that current value.
Preferably, the CTI controller constitutes the means for starting a call associated countdown, and the CTI controller periodically sends the current value of said call-associated countdown to that computer.
Alternatively, that computer constitutes the means for starting a call-associated countdown, and the CTI controller is arranged to include said retrieved countdown value in said incoming call message.
Preferably, the profile comprises a plurality of such countdown values each having a respective priority ranking, one of said plurality being a default countdown value and having lowest priority ranking, and the or each of the remainder of said plurality being associated with a predetermined value of a respective call-related feature, and the CTI controller is arranged to compare information retrieved from the signalling data of that incoming call directly, or indirectly, with said predetermined value or values, and in the event of no successful comparison outcome to select for retrieval the default countdown value, and in the event of a successful comparison outcome in respect of one or more call-related features to select for retrieval the or a said countdown value taking into account, if necessary, priority ranking.
More preferably, a said call-related feature is calling user identity, and the CTI controller is arranged to retrieve from signalling data of that incoming call a calling user identity.
Yet more preferably, the said call-related feature is a personal name, and the CTI controller is arranged to retrieve a calling user identity from signalling data of that incoming call and to use a calling user identity-to-personal name translation table to obtain a corresponding personal name.
The CTI controller may be arranged to retrieve a calling line identity, which constitutes said calling user identity.
When the call-related feature is geographical origin, the CTI controller may be arranged to retrieve from signalling data of that incoming call a geographical origin.
Preferably, the geographical origin feature is an area name, and the CTI controller is arranged to retrieve a calling line identity from signalling data of that incoming call, to extract an area code from the calling line identity, and to use an area code-to-area name translation table to obtain a corresponding area name.
When the call-related feature is a range of times, the CTI controller may be arranged to compare the time of receipt of that incoming call with said range of times.